﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Microsoft.ServiceModel.DomainServices.Tools;
using Microsoft.ServiceModel.DomainServices.Tools.TextTemplate;
using Microsoft.ServiceModel.DomainServices.Tools.TextTemplate.CSharpGenerators;
using System.IO;
using System.Diagnostics;

namespace AbstraX.Generators
{
    [DomainServiceClientCodeGenerator(typeof(CodeGeneratorX), "C#")]
    public class CodeGeneratorX : CSharpClientCodeGenerator
    {
        protected override EntityGenerator EntityGenerator
        {
            get 
            {
                return new EntityGeneratorX(); 
            }
        }

        protected override DomainContextGenerator DomainContextGenerator
        {
            get 
            { 
                return new DomainContextGeneratorX(); 
            }
        }

        protected override WebContextGenerator WebContextGenerator
        {
            get 
            { 
                return new WebContextGeneratorX(); 
            }
        }

        protected override ComplexObjectGenerator ComplexObjectGenerator
        {
            get 
            { 
                return base.ComplexObjectGenerator; 
            }
        }

        protected override EnumGenerator EnumGenerator
        {
            get 
            { 
                return base.EnumGenerator; 
            }
        }
    }
}